package br.com.techfor.controller;

import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import br.com.generic.dao.impl.GenericDAOImpl;
import br.com.techfor.generic.dao.GenericDAO;
import br.com.techfor.model.Funcionario;

/**
 * 
 * @author alex.amaral
 * 
 */
public class CadastroFuncionario extends HttpServlet {

	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public CadastroFuncionario() {
		super();
		// TODO Auto-generated constructor stub
	}

	

	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {


		// Integer id = Integer.parseInt(request.getParameter("id"));

		String nome = request.getParameter("nome");

		String apelido1 = request.getParameter("apelido1");

		String apelido2 = request.getParameter("apelido2");

		String telefone = request.getParameter("telefone");

		String celular = request.getParameter("celular");

		String endereco = request.getParameter("endereco");

		String bairro = request.getParameter("bairro");

		String cidade = request.getParameter("cidade");

		String cep = request.getParameter("cep");

		/* String converterDataDeEntrada = request.getParameter("entrada");

		String converterDataDeNascimento = request.getParameter("Nascimento");

		Calendar dataDeEntrada = null;
		Calendar dataDeNascimento = null;
		try {
			Date data1 = new SimpleDateFormat("dd/MM/yyyy")
					.parse(converterDataDeEntrada);
			Date data2 = new SimpleDateFormat("dd/MM/yyyy")
					.parse(converterDataDeNascimento);
			dataDeEntrada = Calendar.getInstance();
			dataDeNascimento = Calendar.getInstance();
			dataDeEntrada.setTime(data1);
			dataDeNascimento.setTime(data2);

		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}*/

		

		String sexo = request.getParameter("sexo");

		String email = request.getParameter("email");

		String sobrenome = request.getParameter("sobrenome");

		String cargo = request.getParameter("cargo");

		String setor = request.getParameter("setor");

		GenericDAO<Funcionario, Integer> dao = new GenericDAOImpl<Funcionario, Integer>(
				Funcionario.class);
		Funcionario funcionario = new Funcionario();

		funcionario.setNome(nome);

		funcionario.setSobrenome(sobrenome);

		funcionario.setApelido1(apelido1);

		funcionario.setApelido2(apelido2);

		funcionario.setTelefone(telefone);

		funcionario.setCelular(celular);

		funcionario.setEndereco(endereco);

		funcionario.setBairro(bairro);

		funcionario.setCidade(cidade);

		funcionario.setCep(cep);

		funcionario.setStatus("A");

		funcionario.setSexo(sexo);

		funcionario.setEmail(email);

		funcionario.setCargo(cargo);

		//funcionario.setDataDeEntrada(dataDeEntrada);

		//funcionario.setDataDeNascimento(dataDeNascimento);

		funcionario.setSetor(setor);

		dao.salvar(funcionario);

		RequestDispatcher rd = request.getRequestDispatcher("/index.jsp");
		rd.forward(request, response);

	}

	/*
	 * if (id == null){
	 * 
	 * dao.salvar(funcionario); } else{ funcionario = dao.getBean(id);
	 * dao.atualizar(funcionario); }
	 * 
	 * RequestDispatcher rd = request.getRequestDispatcher("/index.jsp");
	 * rd.forward(request, response);
	 * 
	 * }
	 */

	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {

		doPost(request, response);


	}

}
